package find

import(
	"strings"

	consts "goauto/consts"
	mod "goauto/model"
	modActionPcBaseFind "goauto/model/action/pc/base/find"
)

func FindPic(input *modActionPcBaseFind.FindPic) (action *mod.Action) {
	//参数防错误初始化
	//FindAreaX1
	if input.FindAreaX1 < consts.INT_0 { input.FindAreaX1 = consts.INT_0 }//小于0,归0
	if input.FindAreaX1 > consts.FIND_AREA_MAX_X { input.FindAreaX1 = consts.INT_0 }//大于1920,归0
	//FindAreaY1
	if input.FindAreaY1 < consts.INT_0 { input.FindAreaY1 = consts.INT_0 }//小于0,归0
	if input.FindAreaY1 > consts.FIND_AREA_MAX_Y { input.FindAreaY1 = consts.INT_0 }//大于1080,归0
	//FindAreaX2
	if input.FindAreaX2 <= consts.INT_0 { input.FindAreaX2 = consts.FIND_AREA_MAX_X }//小于等于0,归1920
	if input.FindAreaX2 > consts.FIND_AREA_MAX_X { input.FindAreaX2 = consts.FIND_AREA_MAX_X }//大于1920,归1920
	//FindAreaY2
	if input.FindAreaY2 <= consts.INT_0 { input.FindAreaY2 = consts.FIND_AREA_MAX_Y }//小于等于0,归1080
	if input.FindAreaY2 > consts.FIND_AREA_MAX_Y { input.FindAreaY2 = consts.FIND_AREA_MAX_Y }//大于1080,归1080
	//范围比较
	if input.FindAreaX1 >= input.FindAreaX2 { input.FindAreaX1 = consts.INT_0; input.FindAreaX2 = consts.FIND_AREA_MAX_X }//左坐标不能大于右坐标
	if input.FindAreaY1 >= input.FindAreaY2 { input.FindAreaY1 = consts.INT_0; input.FindAreaY2 = consts.FIND_AREA_MAX_Y }//上坐标不能大于下坐标
	//Similarity
	if input.Similarity <= float64(consts.INT_0) { input.Similarity = consts.FIND_SIMI_DEF }//小于等于0,归0.7
	if input.Similarity > float64(consts.INT_1) { input.Similarity = consts.FIND_SIMI_DEF }//大于1,归0.7
	if input.Similarity < consts.FIND_SIMI_MIN { input.Similarity = consts.FIND_SIMI_DEF }//小于0.6,归0.7
	//FindTimes
	if input.FindTimes <= consts.INT_0 { input.FindTimes = consts.FIND_TIMES_DEF }//小于等于0,归15
	if input.FindTimes > 10 * consts.FIND_TIMES_MINUTE { input.FindTimes = consts.FIND_TIMES_DEF }//超过10分钟，归15
	//FindNextRouteNo
	if input.FindNextRouteNo == consts.STR_EMPTY { input.FindNextRouteNo = consts.ROUTE_NO_STOP }//未设置，停止
	//NotFindNextRouteNo
	if input.NotFindNextRouteNo == consts.STR_EMPTY { input.NotFindNextRouteNo = consts.ROUTE_NO_STOP }//未设置，停止
	//PicPath
	input.PicPath = "/Img" + input.PicPath
	input.PicPath = strings.Replace(input.PicPath, "/", "\\", -1)
	
	//执行
	action = &mod.Action{
		ActionType: "pc_base_find_findPic",
		ActionParam: input,
	}
	return
}